-
Notifications
You must be signed in to change notification settings - Fork 191
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update installation Tips #1962
Update installation Tips #1962
Conversation
Tested on an M1 Mac now. Mountainsort caused the pip install to fail with this error:
So I commented that out for now in the Mac install.
So I think adding in the exception actually provides pretty useful info for the user as can be seen by herding spikes failing in during the check install. Rather than do it silently it tells the user to pip install if they want it. |
@alejoe91 What do you think of adding test for this to the CI? |
I think it is a good idea. Maybe just a chron job? This gets out of sync too often. |
Yep!! A chron job running on all three environments sounds great :) |
Good. I will get to it. |
Maybe we can merge this so we can test the latest changes? This looks good to me as it is. |
I haven't tested linux, but both Mac (m1) and Windows (10) are confirmed to work with this code. |
Actually the check_your_install.py opens the spikeinterface-gui. I've never tried doing Github Actions with gui-s. Will that work? |
No, it won't work, that's a part that we will probably have to refactor and skip during CI. |
@alejoe91 @h-mayorquin : Why not but this is very low priority, I think. I use this code when I prepare spike sorting workshop for students so we can quickly check theinstallation. |
I agree that there are more urgent tests in general, but I've linked a few of the issues where people use the install tips as their way of creating a spikeinterface environment. Making sure that beginners first experience with spikeinterface is a good one (with their local 'test' passing) is a good way to keep them using the package. Open: #1915, #1870, #1476, #1447, |
I updated the linux yaml to release the version restrictions, but can't test locally to make sure it works. I finally hacked together a workflow that checks to make sure that the conda environment can be created on a cron job. That way it'll be easier to add tests later, but at least for now we can see if the environment gets out of sync sooner rather than with a user issue. You want to take a peek at the yml @h-mayorquin (I always mess them up as you can see with the commit history)? It is pretty simple for now. That way a refactor/proper test can be pushed off to a later time for the |
@zm711 I also think that having new users face as little difficulties as possible is very important, it will also make our life easier in the long-term when we switch from developing futures to support. In this case, the script that you wrote which should test that the conda environment is working correctly is a step in the right direction and hopefully -as you did it- will alleviate @samuelgarcia concerns about priorities. Long term though I think we should do two things:
|
Thanks so much @zm711 I'll have a final round with @samuelgarcia on Wednesday to merge some PRs including this one! Thanks for the patience! |
No worries @alejoe91! I just didn't want to let things get out of sync, but I'll let you merge main into it whenever you are ready to merge it. |
Last PR before I need to prep some school stuff.
I updated the installation tips since many users with issues have the
si_env
in the traceback they are using the ymls to create their envs. I moved to 3.10 for now (although I've been using 3.11 myself with no issues). I released the joblib and numpy restrictions and tested creating this env and running tridesclous with no issues. Bumped up tridesclous to the newest version and also bumped up neo to 0.12. Worked fine on windows, though I can test on a mac too later.Also deleted
elephant
since it isn't a dependency. Is there a reason why we would want to keep having SI users download it to their env?Finally, I added a tiny error log so that if someone runs the code and it fails it will at least say why things failed rather than be silent. So if a user has issues during testing they can at least share the error code on issues as semi-requested in #1870.